1. Field of the Invention
The present invention relates in general to the field of information handling system memory test, and more particularly to a system and method for accelerated testing of information handling system memory.
2. Description of the Related Art
As the value and use of information continues to increase, individuals and businesses seek additional ways to process and store information. One option available to users is information handling systems. An information handling system generally processes, compiles, stores, and/or communicates information or data for business, personal, or other purposes thereby allowing users to take advantage of the value of the information. Because technology and information handling needs and requirements vary between different users or applications, information handling systems may also vary regarding what information is handled, how the information is handled, how much information is processed, stored, or communicated, and how quickly and efficiently the information may be processed, stored, or communicated. The variations in information handling systems allow for information handling systems to be general or configured for a specific user or specific use such as financial transaction processing, airline reservations, enterprise data storage, or global communications. In addition, information handling systems may include a variety of hardware and software components that may be configured to process, store, and communicate information and may include one or more computer systems, data storage systems, and networking systems.
One trend that has emerged over the evolution of information handling systems is that the size of the random access memory (RAM) used in systems and demanded by consumers has steadily increased. Plentiful RAM aids in the speed at which an information handling system is able to operate by keeping a greater amount of data readily available for rapid access by processors. Further, RAM of all types has decreased in cost over time leading information handling system manufacturers and application designers to plan on the availability of increased amounts of RAM as designs progress.
Typically, information handling system manufacturers include instructions in a system BIOS or firmware to perform a brief test of the RAM at each system boot or other start-up routine. In addition, a more extensive memory test is performed any time memory is added to or removed from an information handling system or after power is removed, such as after the unplugging of a desktop information handling system's AC power cord. The memory test generally includes two separate types of test routines, each typically performed with 16-bit code. The first test routine is usually a walking 1s and walking 0s test that looks for errors at memory module boundaries. The second test routine is usually some sort of a pattern test that looks for stuck bit errors. Each of these test routines are iterative typically working on one 64 Kbyte block of memory at time. Each iteration usually includes a check and set up of gate A20, is preceded by entry into protected mode and followed by an exit from protected mode, and uses the WBINVD (write-back invalidate) instruction to make sure that the caches do not interfere with the test.
One difficulty that has arisen with the increased memory available on information handling systems is that the system startup time, such as the BIOS POST time, has grown along with memory size due the greater amount of time needed to perform the memory test. For instance, a conventional memory test on an exemplary information handling system with 4 Gbytes of RAM can take more than 12 minutes to complete. Excessive startup times have an adverse impact on users of information handling systems who often are frustrated by the delay imposed before the information handling system is operational. Businesses lose substantial worker productivity when workers wait idly for system startup to complete. However, incomplete memory tests that fail to identify memory failures can lead to even greater frustration and productivity loss when a user's data is inexplicably corrupted.